訊息指令,指根據訊息而註冊的指令,並由訊息右鍵選單觸發,以下為官方縮圖。
基本上跟上一篇User Commands 差不多,只是觸發的點與回傳有所不同。
一個是成員、而這篇則是依"訊息"為目標
而message_command 也是依賴上上篇所說的py-cord 套件
@Bot.message_command(name="訊息ID",description="取得訊息ID")
async def get_message_id(ctx, message: discord.Message):
await ctx.respond(f"訊息命令觸發: `{message.id}`")
因為是針對訊息下指令的,
所以回傳為目標訊息資訊。
參考閱讀: discord.Message
然後你就發現跟user_command 幾乎相似,
所以恭喜你直接會了。
剩下就是怎麼應用與你想怎麼控制目標內容與回傳,
目前我想不到他可以怎麼實作,
所以這篇就沒有小實作了。
前面主要都在教怎麼觸發你的指令,
基本上一定有ctx 資料,
ctx: discord.ApplicationContext
在官方文件,Attributes 是它擁有的屬性,也就是內容,
methods 是它擁有的腳本,也就是可以觸發的行為。
而指令都一定要回覆,
當然也有直接刪除的效果,
而在methods中最常用的就是 ctx.respond、ctx.send_response
相關回覆內容屬性也可以在文件中尋找。
而後面我也會有幾篇來示範幾個能使用的功能。